﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using Freedback.Core.Entities;

namespace FreedBack.Core.Entities
{
    public class FeedbackForm : IEntity
    {
        [Key]
        public int Id { get; set; }

        [Required]
        public int? FeedbackTypeId { get; set; }
        public FeedbackType FeedbackType { get; set; }

        [Required]
        public int? AreaOfFeedbackId { get; set; }
        public AreaOfFeedback AreaOfFeedback { get; set; }

        [MaxLength(200)]
        public string AreaOfFeedbackOther { get; set; }

        [Required]
        public int? RatingValueId { get; set; }
        public RatingValue RatingValue { get; set; }

        [Required]
        [MaxLength(1000)]
        public string Comments { get; set; }

        [MaxLength(2000)]
        public string SourceUrl { get; set; }

        [MaxLength(200)]
        public string SourceClientUserId { get; set; }

        //[DatabaseGenerated(System.ComponentModel.DataAnnotations.DatabaseGeneratedOption.Computed)]
        public DateTime CreatedDate { get; set; }
    }
}